// pages/order/list/list.js
const fetch = require('../../utils/fetch')
// 右列表各分类高度数组
let categoryHeight=[]
Page({

    /**
     * 页面的初始数据
     */
    data: {
        activeIndex:0,
        tapIndex:0
    },
    // 是否正在切换左侧激活的分类
    changingCategory:false,
    // 点击左侧菜单栏事件
    selectMenu:function(e){
        // console.log(e);
        let index=e.currentTarget.dataset.index
        this.changingCategory=true,
        this.setData({
            activeIndex:index,
            tapIndex:index
        },()=>{
            this.changingCategory=false
        })
    },
    //  滑动右侧菜单栏事件
    onFoodScroll:function(e){
        // console.log(categoryHeight);
        // console.log(e);
        let scrollTop=e.detail.scrollTop
        let activeIndex = 0
        categoryHeight.forEach((item,i)=>{
            if(scrollTop>=item){
                activeIndex=i
            }
        })
        
        if(!this.changingCategory){
            this.changingCategory=true
            this.setData({
                activeIndex:activeIndex
            },()=>{
            this.changingCategory=false
        })
        }
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        wx.showLoading({
            title: '努力加载中',
        })
        //    请求数据
        fetch('food/list').then((res)=>{
            wx.hideLoading()
            // console.log(res);
            if(res.statusCode==200){
                this.setData({
                    listData:res.data
                },
                // 获取右侧列表高度
                ()=>{
                    let query=wx.createSelectorQuery()
                    let top=0
                    query.select('.food').boundingClientRect(rect=>{
                        top=rect.top
                        // console.log(top)
                    })
                    query.selectAll('.food-category').boundingClientRect(res=>{
                        res.forEach(rect=>{
                            //   console.log(rect.top);
                            //   相当于rect.id.substring(9) 去掉前9个字符
                           categoryHeight[rect.id.substring(rect.id.indexOf('_')+1)]=rect.top-top
                        })
                    })
                    query.exec()
                })
            }else{
                wx.showModal({
                    showCancel:false,
                    title:'数据返回有误'
                  })
            }
        })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})